ArticleslgStudy

computer science

Quadratic pseudo-Boolean optimization

Quadratic pseudo-Boolean optimization is a computer 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 Quadratic pseudo-Boolean optimization rather than just read about it. In short: Quadratic pseudo-Boolean optimisation (QPBO) is a combinatorial optimization method for minimizing quadratic pseudo-Boolean functions in the form f ( x ) = w 0 + ∑ p ∈ V w p ( x p ) + ∑ ( p , q ) ∈ E w p q ( x p , x q ) {\displaystyle f(\mathbf {x} )=w_{0}+\sum _{p\in V}w_{p}(x_{p})+\sum _{(p,q)\in E}w_{pq}(x_{p},x_{q})} in the binary variables x p ∈ { 0 , 1 } ∀ p ∈ V = { 1 , … , n } {\displaystyle x_{p}\in \{0,1\}\…

Quadratic pseudo-Boolean optimization — main illustration
Quadratic pseudo-Boolean optimization — illustration

Key takeaways

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

Reference excerpt

Quadratic pseudo-Boolean optimisation (QPBO) is a combinatorial optimization method for minimizing quadratic pseudo-Boolean functions in the form

f ( x ) = w 0 + ∑ p ∈ V w p ( x p ) + ∑ ( p , q ) ∈ E w p q ( x p , x q ) {\displaystyle f(\mathbf {x} )=w_{0}+\sum _{p\in V}w_{p}(x_{p})+\sum _{(p,q)\in E}w_{pq}(x_{p},x_{q})}

in the binary variables x p ∈ { 0 , 1 } ∀ p ∈ V = { 1 , … , n } {\displaystyle x_{p}\in \{0,1\}\;\forall p\in V=\{1,\dots ,n\}} , with E ⊆ V × V {\displaystyle E\subseteq V\times V} . If f {\displaystyle f} is submodular then QPBO produces a global optimum equivalently to graph cut optimization, while if f {\displaystyle f} contains non-submodular terms then the algorithm produces a partial solution with specific optimality properties, in both cases in polynomial time. QPBO is a useful tool for inference on Markov random fields and conditional random fields, and has applications in computer vision problems such as image segmentation and stereo matching.

Optimization of non-submodular functions If the coefficients w p q {\displaystyle w_{pq}} of the quadratic terms satisfy the submodularity condition

w p q ( 0 , 0 ) + w p q ( 1 , 1 ) ≤ w p q ( 0 , 1 ) + w p q ( 1 , 0 ) {\displaystyle w_{pq}(0,0)+w_{pq}(1,1)\leq w_{pq}(0,1)+w_{pq}(1,0)}

then the function can be efficiently optimised with graph cut optimization. It is indeed possible to represent it with a non-negative weighted graph, and the global minimum can be found in polynomial time by computing a minimum cut of the graph, which can be computed with algorithms such as Ford–Fulkerson, Edmonds–Karp, and Boykov–Kolmogorov's. If the function is not submodular, then the problem is NP-hard in the general case and it is not always possible to solve it exactly in polynomial time. It is possible to replace the target function with a similar but submodular approximation, e.g. by removing all non-submodular terms or replacing them with submodular approximations, but such approach is generally sub-optimal and it produces satisfying results only if the number of non-submodular terms is relatively small. QPBO builds an extended graph, introducing a set of auxiliary variables ideally equivalent to the negation of the variables in the problem. If the nodes in the graph associated to a variable (representing the variable itself and its negation) are separated by the minimum cut of the graph in two different connected components, then the optimal value for such variable is well defined, otherwise it is not possible to infer it. Such method produces results generally superior to submodular approximations of the target function.

Properties QPBO produces a solution where each variable assumes one of three possible values: true, false, and undefined, noted in the following as 1, 0, and ∅ {\displaystyle \emptyset } respectively. The solution has the following two properties.

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with Quadratic pseudo-Boolean optimization

Start with the simplest possible case. Write down what Quadratic pseudo-Boolean optimization claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer 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 Quadratic pseudo-Boolean optimization 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 Quadratic pseudo-Boolean optimization 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 Quadratic pseudo-Boolean optimization

In research
Quadratic pseudo-Boolean optimization appears in computer 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 Quadratic pseudo-Boolean optimization 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
Quadratic pseudo-Boolean optimization is common in secondary-school and first-year university syllabi. It links to neighbouring topics Combinatorial optimization, Computational problems in graph theory, so understanding it makes those chapters shorter.
In everyday life
Look for Quadratic pseudo-Boolean optimization 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 Quadratic pseudo-Boolean optimization in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Quadratic pseudo-Boolean optimization 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 Quadratic pseudo-Boolean optimization out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Quadratic pseudo-Boolean optimization in simple terms?

Quadratic pseudo-Boolean optimisation (QPBO) is a combinatorial optimization method for minimizing quadratic pseudo-Boolean functions in the form f ( x ) = w 0 + ∑ p ∈ V w p ( x p ) + ∑ ( p , q ) ∈ E w p q ( x p , x q ) {\displaystyle f(\mathbf {x} )=w_{0}+\sum _{p\in V}w_{p}(x_{p})+\sum _{(p,q)\in…

Why does Quadratic pseudo-Boolean optimization matter?

Because it connects several computer 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 Quadratic pseudo-Boolean optimization?

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 Quadratic pseudo-Boolean optimization.

Tags

  • Combinatorial optimization
  • Computational problems in graph theory

Keep exploring