Reducibility
Glossary Contents
← Ch IV
Chapter V Vertex Cover
Ch VI →
  1. 13 — Touch every edge
  2. 14 — Branching in Haskell
  3. 15 — Where to put the cameras
15

Where to put the cameras

Every CCTV-placement, sensor-coverage, and patrol-route problem you have heard of is vertex cover with extra noise.

A city wants to place CCTV at intersections so that every street is monitored from at least one end. Each camera costs the same; minimize the count. That is vertex cover on the street graph. The same problem appears in IoT sensor placement (cover every link in a mesh network), in network monitoring (place taps so every fiber is observed), in chemistry (place an inhibitor on every reaction edge), and in patrol scheduling (assign an officer to every corridor). The 2-approximation is good enough for almost every commercial deployment — you rarely care whether you used 51 cameras instead of the optimal 47, especially when "optimal" requires an overnight MIP run.

In plain terms

You're putting up security cameras in a city. Every street needs a camera at one of its corners. Cameras are expensive. Vertex cover is the math of doing it with as few as possible.

Scan to come back to page 15

End of Chapter V
Chapter VI Set Cover →
← 14 Branching in Haskell
3/3 · 15/63
16 Cover the universe →