The Simplex Algorithm: Terminology

The Simplex Algorithm: Terminology

Basic Definitions

  • The Simplex Algorithm is a popular method used in linear programming to solve optimisation problems.
  • A linear programming problem is essentially an optimisation problem where both the objective function to be optimised and all the constraints are linear.
  • The objective is to either maximise or minimise the value of a certain objective function subject to a set of constraints.

Elements of Simplex Algorithm

  • The algorithm solves problems by moving along the edges between the vertices of a geometric object known as a polytope.
  • A basic solution is any solution that satisfies the constraints of the problem. Not all basic solutions are feasible.
  • A feasible solution is a basic solution that also satisfies the non-negativity restrictions. This means all of the decision variables are at least zero.
  • The aim is to identify the optimal solution which maximises or minimises the objective function.
  • Slack variables are introduced to convert inequalities into equalities so the algorithm can be implemented.

The Simplex Tableau

  • The simplex tableau is a tabular method used to implement the simplex algorithm.
  • It contains a column for each variable, the objective function, the right-hand side (often the quantity of resources), and the solution.
  • The pivot, located at the intersection of the pivot column and pivot row, is used to adjust the rows below it and the objective function row.

Concepts in Simplex Algorithm

  • The concept of dual problem is used in the simplex algorithm, where the dual problem of a linear programming problem is another linear programming problem related to the original problem.
  • Degeneracy happens when there are multiple optimal solutions for a problem. Degenerate basic solutions can lead to cycling, where the algorithm can’t find the optimal solution and keeps repeating itself.
  • A bounded linear programming problem is one that has an objective function that is bounded either above for a maximisation problem or below for a minimisation problem.
  • An unbounded linear programming problem is one where the objective function can increase without bound in a maximisation problem, or decrease without bound in a minimisation problem.

The Algorithm and Its Limitations

  • The algorithm works by iteratively improving the solution until no more improvements can be made. If no better neighbouring feasible solution can be found, the current solution is declared optimal.
  • The algorithm does not guarantee a solution to all linear programming problems. When the problem is unbounded or infeasible, the algorithm might not find an optimal solution.