Mi sono imbattuto in questo problema in un'area della fisica abbastanza lontana dall'informatica, ma sembra il tipo di domanda che è stata studiata in CS, quindi ho pensato di provare la mia fortuna a chiederlo qui.
Immagina di avere una serie di punti e un elenco di alcune delle distanze tra i punti . Qual è il modo più efficiente per determinare la dimensionalità minima dello spazio in cui è necessario incorporare questi punti? In altre parole, qual è il più piccolo in modo tale che esista un insieme di punti in soddisfi i vincoli di distanza . Sarei altrettanto contento di una risposta per , ma questo sembra più difficile.
Sono felice di dire che le distanze devono corrispondere a solo entro una certa precisione costante e di avere i punti limitati ai punti su un reticolo di spaziatura costante, al fine di evitare problemi di calcolo con i reali.
In effetti, sarei abbastanza contento di una soluzione per la versione decisionale di questo problema, in cui dato e ti viene chiesto se esiste un tale insieme di vertici . Fondamentalmente il problema è in NP, dato che dato un insieme di punti in è facile verificare che soddisfino i requisiti di distanza, ma sembra che ci dovrebbero essere algoritmi temporali sub-esponenziali per questo particolare problema.
L'approccio più ovvio sembra essere quello di provare a costruire strutture -dimensionali in modo iterativo, aggiungendo ulteriori punti uno alla volta e determinando se è necessario aggiungere o meno una nuova dimensione spaziale ad ogni iterazione. Il problema è che sembra che tu possa imbatterti in ambiguità in cui esiste più di un modo per aggiungere un punto alla struttura esistente, e non è chiaro quale porterà a meno dimensioni mentre continui ad aggiungere più punti.
Infine, lasciatemi dire che so che è facile creare elenchi di distanze che non possono essere soddisfatte in nessun numero di dimensioni (cioè quelle che violano la disuguaglianza del triangolo). Tuttavia, per i casi a cui tengo, ci sarà sempre un numero finito minimo di dimensioni in cui è possibile trovare una serie soddisfacente di punti.