Suponha que eu forneça um gráfico não direcionado com arestas ponderadas e diga que cada nó corresponde a um ponto no espaço 3D. Sempre que há uma aresta entre dois nós, o peso da aresta é a distância entre os pontos.
Seu objetivo é reconstruir as posições relativas dos pontos, considerando apenas as distâncias disponíveis (representadas pelos pesos das arestas). Por exemplo, se eu lhe der , então você sabe que os pontos são os vértices de um tetraedro . Você não sabe onde é relativo à origem, nem à sua orientação, ou se foi espelhado, mas pode dizer que é um tetraedro.
Em geral, o problema é fácil se eu fornecer todos os comprimentos das bordas. Escolha apenas arbitrariamente um ponto para estar em ( 0 , 0 , 0 ) , depois escolha um ponto vizinho p 1 e coloque-o em ( d 0 , 1 , 0 , 0 ) , para que um vizinho comum p 2 seja triangulado no Plano XY, então um vizinho comum final p 3 é triangulado no meio espaço z > 0e quebra a simetria restante (supondo que você não tenha escolhido pontos degenerados). Você pode usar esses quatro pontos para triangular todos os demais.
Por outro lado, quando faltam alguns comprimentos de borda, talvez não seja possível recuperar a incorporação. Por exemplo, se houver um vértice que desconecte o gráfico ao ser cortado, os dois componentes que ele separaria se removidos podem girar em torno um do outro.
O que levanta as questões:
- Qual é o preço de encontrar uma solução?
- Como você determina se uma solução é única, até conversão / rotação / espelhamento? A conexão 3 é suficiente? Necessário?
- Que tipos de condições tornam o problema trivial?
- Se eu não prometo que os pesos das bordas realmente correspondem à distância do ponto em 3d, quão caro é determinar se uma incorporação é possível?