Cette question a été précédemment publiée sur Computer Science Stack Exchange ici .
Imaginez que vous êtes un vendeur itinérant très réussi avec des clients dans tout le pays. Pour accélérer les expéditions, vous avez développé une flotte de drones de livraison jetables, chacun avec une portée effective de 50 kilomètres. Avec cette innovation, au lieu de vous rendre dans chaque ville pour livrer vos marchandises, il vous suffit de faire voler votre hélicoptère dans un rayon de 50 km et de laisser les drones terminer le travail.
Problème: Comment devez-vous piloter votre hélicoptère pour minimiser la distance de déplacement?
Plus précisément, étant donné un nombre réel et N points distincts { p 1 , p 2 , … , p N } dans le plan euclidien, quel chemin croisant un disque fermé de rayon R autour de chaque point minimise la longueur totale de l'arc? Le chemin n'a pas besoin d'être fermé et peut recouper les disques dans n'importe quel ordre.
Clairement, ce problème se réduit à TSP comme , donc je ne m'attends pas à trouver un algorithme exact efficace. Je serais satisfait de savoir comment ce problème est appelé dans la littérature et si des algorithmes d'approximation efficaces sont connus.
la source
Réponses:
Il s'agit d'un cas particulier du problème du vendeur ambulant avec des quartiers (TSPN). Dans la version générale, les quartiers n'ont pas besoin d'être tous les mêmes.
Un article de Dumitrescu et Mitchell, Algorithmes d'approximation pour TSP avec des quartiers dans l'avion , répond à votre question. Ils donnent un algorithme d'approximation à facteur constant pour un problème un peu plus général (cas 1), et un PTAS lorsque les voisinages sont des boules disjointes de même taille (cas 2).
En guise de commentaire secondaire, je pense que Mitchell a fait beaucoup de travail sur les variantes géométriques du TSP, donc vous voudrez peut-être regarder ses autres articles.
la source
Une version pertinente du TSP est "Group TSP". Dans ce problème, les "villes" sont divisées en groupes et l'objectif est de trouver une visite qui visite chaque groupe au moins une fois.
Cela a également été étudié dans l'avion, ce qui est plus proche de ce que vous décrivez. Ici, chaque groupe est une région fermée de l'avion et il suffit de visiter un point de la région pour le couvrir. Voir par exemple l'article "Algorithmes d'approximation pour le groupe Euclidien TSP", par Elbassioni et al. dans ICALP 2005.
la source