Imagine que temos dois conjuntos tamanho X , Y ⊂ R n . Qual é a complexidade (tempo) dos testes se eles diferem apenas por rotação? : existe matriz de rotação O O T = O T O = I tal que X = O Y ?
Há uma questão de representar valores reais aqui - por simplicidade, assuma que existe (uma curta) fórmula algébrica para cada coordenada, de modo que o custo das operações aritméticas básicas possa ser assumido como O (1).
A questão básica é se esse problema está em P?
Embora, à primeira vista, esse problema possa parecer simples - geralmente é suficiente testar normas dos pontos e relações locais como ângulos, existem exemplos desagradáveis nos quais, por exemplo, é equivalente ao problema de isomorfismo gráfico .
Especificamente, observando os espaços próprios da matriz de adjacência de grafos fortemente regulares (SRG), podemos fornecer uma interpretação geométrica . Abaixo está o exemplo mais simples - dois SRGs de 16 vértices, que localmente parecem idênticos, mas não são isomórficos:
A matriz de adjacência dos SRGs sempre possui apenas três autovalores (de fórmulas conhecidas) - observando o espaço próprio para o autovalor 2 acima (núcleo de ), possui a dimensão 6 - da base escrita acima. Ortogonalizando-o (Gram-Schmidt), obtemos um grande espaço de possíveis bases ortonormais - diferindo pela rotação O ( 6 ) , que gira "vetores verticais": 16 de comprimento 6. Defina esse conjunto de vetores como X ⊂ R 6 , | X | = 16 aqui, e Y correspondentemente para o segundo gráfico - convertendo a questão do isomorfismo do gráfico em questão se X e difere apenas pela rotação.
A dificuldade é que todos esses pontos estão em uma esfera e recriam relações originais: todos os vizinhos (6 aqui) estão em ângulo fixo <90 graus, todos os não vizinhos (9 aqui) em outro ângulo fixo> 90 graus, como no esquema foto acima.
Portanto, testes baseados em normas e ângulos locais remontam ao problema de isomorfismo gráfico ... mas a interpretação geométrica permite trabalhar em propriedades globais como invariantes de rotação.
Geralmente, podemos definir invariantes de rotação - a questão é construir um conjunto completo de invariantes de rotação: determinar completamente um conjunto de rotação de módulo.
cada gráfico abaixo corresponde a uma única rotação invariante de grau 1,2,3,4 polinomial :
Então, podemos testar se dois polinômios de grau 6 diferem apenas por rotação no tempo polinomial? Nesse caso, o isomorfismo gráfico para SRGs está em P.
Existem exemplos mais difíceis (para testar se dois conjuntos diferem apenas por rotação) do que os SRGs? Duvido, permitindo um limite superior quase polinomial graças a Babai (?)
Atualização : fui apontada similaridade com o problema (resolvido) ortogonal de Procrustes :
da decomposição de valor singular. Poderíamos construir essas matrizes a partir de nossos pontos, no entanto, seria necessário conhecer a ordem - que não sabemos e existempossibilidades.
Poderíamos tentar, por exemplo, Monte-Carlo ou algoritmo genético: alternar alguns pontos e testar a melhoria da distância usando a fórmula acima, no entanto, suspeito que esse algoritmo heurístico possa ter um número exponencial de mínimos locais (?)