课 10, 主题 1
In Progress

simplex-algorithm-slack-variables-and-initial-tableau

课 Progress
0% Complete

Introduction to the simplex algorithm

What is the simplex algorithm?

  • The simplex algorithm is an alternative to the graphical method for solving linear programming problems

    • It is particularly useful when there are more than 2 decision variables as these cannot be drawn graphically (Not very easily at least!)

    • Essentially the simplex algorithm works by considering each vertex of the basic feasible region in turn until an optimal solution is found

  • Initially the simplex algorithm can only be applied to an LP problem that has a basic feasible solution

    • For problems where the basic feasible region contains the origin, the basic feasible solution is the origin

      • In practical situations though, this is often not realistic

        • For example, the number of chairs and tables made by a furniture manufacturer trying to maximise their profit

        • if they make no chairs and no tables, they won’t make any profit!

        • but the origin would satisfy all constraints if it is in the feasible region 

    • For problems where the basic feasible region does not contain the origin the algorithm is adapted such that a basic feasible solution is found first

      • then the simplex algorithm can be applied as usual

Slack variables

What are slack variables?

  • In the first instance, the simplex algorithm deals with constraints (inequalities) involving (excluding the non-negativity constraints)

    • Slack variables are used to turn inequalities involving  into equations

  • A slack variable, as the name implies, takes up the spare (slack) that a function falls short on in “less than or equal to” constraints

    • A slack variable will be added to (the left hand side of) each constraint so will be non-negative

  • The number of slack variables required in a problem will be the same as the number of (non-negativity) constraints involving

Worked Example

The following linear programming problem is to be solved using the simplex algorithm.

Maximise

P equals 8 x plus 5 y plus 7 z

subject to

2 x plus 3 y less or equal than 10
x plus 2 y plus 5 z less or equal than 60
5 y plus 3 z less or equal than 40
x comma space y comma space z greater or equal than 0

Use slack variables to write the constraints (except the non-negativity constraint) of the linear programming problem as equations.

 

Use s subscript 1 to ‘use up the slack’ in the inequality 2 x plus 3 y less or equal than 10

<img alt=”2 x plus 3 y plus s subscript 1 equals 10″ data-mathml='<math ><semantics><mrow><mn>2</mn><mi>x</mi><mo>+</mo><mn>3</mn><mi>y</mi><mo>+</mo><msub><mi>s</mi><mn>1</mn></msub><mo>=</mo><mn>10</mn></mrow><annotation encoding=”application/vnd.wiris.mtweb-params+json”>{“language”:”en”,”fontFamily”:”Times New Roman”,”fontSize”:”18″,”autoformat”:true}</annotation></semantics></math>’ data-type=”working” height=”28″ role=”math” src=”data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Awrs%3D%22http%3A%2F%2Fwww.wiris.com%2Fxml%2Fmathml-extension%22%20height%3D%2228%22%20width%3D%22123%22%20wrs%3Aba

Responses

您的邮箱地址不会被公开。 必填项已用 * 标注