Multi-covering point set with disks

Given a 2D point set X where each point must be covered k times, determines radii for discs centered at points Y that meet the requirement.
4 téléchargements
Mise à jour 25 juil. 2024

Afficher la licence

Determines disc radiis for sensors placed at Y to cover points at X the required number of times (k). This is a 'multi-covering with disks' problem.
This code implements Algorithm 1 described in the paper:
Bhowmick, S., Varadarajan, K., & Xue, S.-K. (2013). "A constant-factor approximation for multi-covering with disks." In Proceedings of the twenty-ninth annual symposium on Computational geometry (pp. 243-248). https://doi.org/10.48550/arXiv.1407.5674
Abstract: "We consider variants of the following multi-covering problem with disks. We are given two point sets Y (servers) and X (clients) in the plane, a coverage function κ:X→, and a constant α≥1. Centered at each server is a single disk whose radius we are free to set. The requirement is that each client x∈X be covered by at least κ(x) of the server disks. The objective function we wish to minimize is the sum of the α-th powers of the disk radii. We present a polynomial time algorithm for this problem achieving an O(1) approximation."
Credit goes to the original authors for their work on developing this algorithm.
Implemented in Matlab by Mariem Guitouni, <mguitoun@CougarNet.UH.EDU>
July 25, 2024.

Citation pour cette source

Aaron T. Becker's Robot Swarm Lab (2025). Multi-covering point set with disks (https://www.mathworks.com/matlabcentral/fileexchange/169861-multi-covering-point-set-with-disks), MATLAB Central File Exchange. Extrait(e) le .

Compatibilité avec les versions de MATLAB
Créé avec R2024a
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux
Tags Ajouter des tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Publié le Notes de version
1.0.1

Fixed an error that caused an infinite loop. Now at least one radii grows each iteration.

1.0.0