ArticleslgStudy

science

Linear programming relaxation

Linear programming relaxation is a science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Linear programming relaxation rather than just read about it. In short: In mathematics, the relaxation of a (mixed) integer linear program is the problem that arises by removing the integrality constraint of each variable. For example, in a 0–1 integer program, all constraints are of the form x i ∈ { 0 , 1 } {\displaystyle x_{i}\in \{0,1\}} .

Linear programming relaxation — main illustration
Linear programming relaxation — illustration

Key takeaways

  • Linear programming relaxation belongs to science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Linear programming relaxation to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Linear programming relaxation from memory before moving on to harder problems.

Reference excerpt

In mathematics, the relaxation of a (mixed) integer linear program is the problem that arises by removing the integrality constraint of each variable. For example, in a 0–1 integer program, all constraints are of the form

x i ∈ { 0 , 1 } {\displaystyle x_{i}\in \{0,1\}} . The relaxation of the original integer program instead uses a collection of linear constraints

0 ≤ x i ≤ 1. {\displaystyle 0\leq x_{i}\leq 1.}

The resulting relaxation is a linear program, hence the name. This relaxation technique transforms an NP-hard optimization problem (integer programming) into a related problem that is solvable in polynomial time (linear programming); the solution to the relaxed linear program can be used to gain information about the solution to the original integer program.

Example Consider the set cover problem, the linear programming relaxation of which was first considered by Lovász in 1975. In this problem, one is given as input a family of sets F = {S0, S1, ...}; the task is to find a subfamily, with as few sets as possible, having the same union as F. To formulate this as a 0–1 integer program, form an indicator variable xi for each set Si, that takes the value 1 when Si belongs to the chosen subfamily and 0 when it does not. Then a valid cover can be described by an assignment of values to the indicator variables satisfying the constraints

x i ∈ { 0 , 1 } {\displaystyle \textstyle x_{i}\in \{0,1\}}

(that is, only the specified indicator variable values are allowed) and, for each element ej of the union of F,

∑ { i ∣ e j ∈ S i } x i ≥ 1 {\displaystyle \textstyle \sum _{\{i\mid e_{j}\in S_{i}\}}x_{i}\geq 1}

(that is, each element is covered). The minimum set cover corresponds to the assignment of indicator variables satisfying these constraints and minimizing the linear objective function

min ∑ i x i . {\displaystyle \textstyle \min \sum _{i}x_{i}.}

The linear programming relaxation of the set cover problem describes a fractional cover in which the input sets are assigned weights such that the total weight of the sets containing each element is at least one and the total weight of all sets is minimized. As a specific example of the set cover problem, consider the instance F = {{a, b}, {b, c}, {a, c}}. There are three optimal set covers, each of which includes two of the three given sets. Thus, the optimal value of the objective function of the corresponding 0–1 integer program is 2, the number of sets in the optimal covers. However, there is a fractional solution in which each set is assigned the weight 1/2, and for which the total value of the objective function is 3/2. Thus, in this example, the linear programming relaxation has a value differing from that of the unrelaxed 0–1 integer program.

Solution quality of relaxed and original programs The linear programming relaxation of an integer program may be solved using any standard linear programming technique. If it happens that, in the optimal solution, all variables have integer values, then it will also be an optimal solution to the original integer program. However, this is generally not true, except for some special cases (e.g. problems with totally unimodular matrix specifications.) In all cases, though, the solution quality of the linear program is at least as good as that of the integer program, because any integer program solution would also be a valid linear program solution. That is, in a maximization problem, the relaxed program has a value greater than or equal to that of the original program, while in a minimization problem such as the set cover problem the relaxed program has a value smaller than or equal to that of the original program. Thus, the relaxation provides an optimistic bound on the integer program's solution. In the example instance of the set cover problem described above, in which the relaxation has an optimal solution value of 3/2, we can deduce that the optimal solution value of the unrelaxed integer program is at least as large. Since the set cover problem has solution values that are integers (the numbers of sets chosen in the subfamily), the optimal solution quality must be at least as large as the next larger integer, 2. Thus, in this instance, despite having a different value from the unrelaxed problem, the linear programming relaxation gives us a tight lower bound on the solution quality of the original problem.

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with Linear programming relaxation

Start with the simplest possible case. Write down what Linear programming relaxation claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Linear programming relaxation before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Linear programming relaxation ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Linear programming relaxation

In research
Linear programming relaxation appears in science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Linear programming relaxation in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Linear programming relaxation is common in secondary-school and first-year university syllabi. It links to neighbouring topics Combinatorial optimization, Linear programming, Polyhedral combinatorics, so understanding it makes those chapters shorter.
In everyday life
Look for Linear programming relaxation outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Linear programming relaxation in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Linear programming relaxation means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Linear programming relaxation out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Linear programming relaxation in simple terms?

In mathematics, the relaxation of a (mixed) integer linear program is the problem that arises by removing the integrality constraint of each variable. For example, in a 0–1 integer program, all constraints are of the form x i ∈ { 0 , 1 } {\displaystyle x_{i}\in \{0,1\}} .

Why does Linear programming relaxation matter?

Because it connects several science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Linear programming relaxation?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Linear programming relaxation.

Tags

  • Combinatorial optimization
  • Linear programming
  • Polyhedral combinatorics
  • Relaxation (approximation)

Keep exploring