Ordinamento dei punti in modo tale da massimizzare la distanza euclidea minima tra punti consecutivi


10

Dato un insieme di punti in uno spazio cartesiano 3D, sto cercando un algoritmo che ordinerà questi punti, in modo tale da massimizzare la distanza euclidea minima tra due punti consecutivi.

Sarebbe anche utile se l'algoritmo avesse una tendenza verso una distanza euclidea media più alta tra punti consecutivi.



2
Sembra la versione di massimizzazione del collo di bottiglia TSP . O la versione del collo di bottiglia del problema del percorso più lungo . ha un nome?
Jukka Suomela,

1
Consiglierei di usare l'euristico k-clustering gonzalez (la strategia golosa). senza pensarci fino in fondo, sembra che dovrebbe produrre un'approssimazione 2?
Suresh Venkat,

Sfortunatamente, come detto, Gonzalez non darà una buona risposta (considera i punti (-100,0), (99,0) e (100,0)). Se iniziamo dal punto sbagliato (-100,0) per esempio, otteniamo una risposta terribile. È ancora possibile che funzionare gonzalez da ogni punto e prendere la migliore risposta funzioni.
Suresh Venkat,

Risposte:


6

ETA: Tutto quanto sotto è nel documento " Sulla massima dispersione TSP ", Arkin et al, SODA 1997.

Non conosco le risposte esatte, ma ecco un altro approccio leggermente diverso dal suggerimento di Suresh sul raggruppamento di Gonzalez:

Supponiamo per semplicità che sia pari. Per ogni vertice , trova la mediana delle distanze . Forma un grafico non orientato in cui ogni vertice è collegato agli altri vertici che sono almeno alla distanza mediana. Il grado minimo in questo grafico è almeno , quindi dal teorema di Dirac è possibile trovare un ciclo hamiltoniano in questo grafico.p n - 1 d ( p , q ) p n / 2npn1d(p,q)pn/2

D'altra parte, ci sono vertici nel disco centrati in con raggio , troppi per formare un insieme indipendente nel ciclo, quindi ogni ciclo hamiltoniano dovrebbe avere un bordo connesso circa due di questi vertici, di lunghezza al massimo . Pertanto, il ciclo hamiltoniano trovato da questo algoritmo è nel peggiore dei casi un'approssimazione di 2 al ciclo massimo del collo di bottiglia.p d ( p , q ) 2 d ( p , q )n/2+1pd(p,q)2d(p,q)

Funzionerà in qualsiasi spazio metrico e fornirà il rapporto di approssimazione ottimale tra gli algoritmi che funzionano in qualsiasi spazio metrico. Perché, se potessi approssimarti meglio che entro un fattore due, potresti risolvere esattamente i problemi del ciclo hamiltoniano, riducendo il grafico di input al problema del ciclo hamiltoniano in uno spazio metrico con distanza 2 per ogni bordo del grafico e distanza 1 per ogni non -bordo.

Probabilmente con un po 'di attenzione puoi massaggiare questo in un algoritmo di approssimazione per percorsi anziché cicli.


C'è qualche motivo per credere che non ci sia PTAS nel caso euclideo?
Jukka Suomela,

2
Nessun motivo che io conosca. Ma i soliti metodi PTAS per i problemi di progettazione della rete euclidea funzionano solo per minimizzare, non massimizzare.
David Eppstein,

Un'eccezione che conosco è il documento di Chen e Har-Peled su un PTAS per l'Orienteering in aereo. È un problema di massimizzazione.
Chandra Chekuri,

Abbiamo caricato una prestampa che risponde a questa domanda, ovvero fornisce un PTAS per TSP a dispersione massima nel caso euclideo. arxiv.org/abs/1512.02963 (László Kozma, Tobias Mömke: A PTAS for Euclidean Maximum Scatter TSP)
László Kozma,

3

Abbiamo caricato una prestampa che risponde a questa domanda, ovvero fornisce un PTAS per TSP a dispersione massima nel caso euclideo. http://arxiv.org/abs/1512.02963 (László Kozma, Tobias Mömke: un PTAS per Euclidean Maximum Scatter TSP)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.