Considere o espaço dimensional e deixe ser uma restrição linear no formato , em que , e .{ 0 , 1 } n c a 1 x 1 + a 2 x 2 + a 3 x 3 + . . . + a n - 1 x n - 1 + a n x n ≥ k a i ∈ R x i ∈ { 0 , 1 } k ∈ R
Claramente, tem o efeito de dividir em dois subconjuntos S_c e S _ {\ lnot c} . S_c contém todos e apenas os pontos que satisfazem c , enquanto S _ {\ lnot c} contém todos e apenas os pontos que falsificam c .{ 0 , 1 } n S c S ¬ c S c c S ¬ c c
Suponha que . Agora, seja um subconjunto de modo que todas as três instruções a seguir sejam válidas :
- contém exatamente pontos.
- Tais pontos são linearmente independentes.
- Tais pontos são aqueles à distância mínima do hiperplano representado por . Mais precisamente, seja a distância de um ponto do hiperplano . Então, modo que satisfaça 1 e 2, é o caso . Em outras palavras, é, dentre todos os subconjuntos de atendem às condições 1 e 2, aquele que minimiza a soma das distâncias de seus pontos do hiperplano .
Questões
- Dado , é possível calcular eficiência?
- Qual é o algoritmo mais conhecido para computá-lo?
Exemplo com
, .
Atualização 05/12/2012
Motivação
A motivação é que o uso de deverá ser possível para determinar o óptimo de restrição , como deve ser o hiperplana definido pelos pontos em .
A restrição ideal é aquela que leva ao polítopo ótimo .
O polítopo ideal é aquele cujos vértices são todos e apenas os vértices inteiros do polítopo inicial (um vértice inteiro é um vértice cujas coordenadas são todas inteiras). P
O processo pode ser iterado para cada restrição de uma instância 0-1 , substituindo sempre com sua restrição ideal correspondente . No final, isto levará à óptima poliepítopo de . Então, como os vértices de são todos e somente os vértices inteiros do polítopo inicial de , qualquer algoritmo para pode ser usado para calcular a solução inteira ideal. Eu sei que ser capaz de calcular eficiência implicaria , no entanto, a seguinte pergunta adicional ainda permanece:L P I c c ∗ P ∗ I P ∗ P I L P P ∗ P = N P
Pergunta adicional
Existe algum trabalho anterior nesse sentido? Alguém já investigou a tarefa da computação, dado um polítopo , seu correspondente polítopo ótimo ? Qual é o algoritmo mais conhecido para fazer isso?P ∗
fonte
Respostas:
Parece ser NP-difícil de fazer exatamente, pela redução da soma do subconjunto. Suponhamos que temos um procedimento eficiente para computação . Dados inteiros positivos codificados em binário, desejamos testar se existe um subconjunto somando . Pré-processe jogando fora números inteiros maiores que .v 1 , … , v n s sO v1,…,vn s s
Chame o procedimento para obter um pequeno conjunto de pontos que satisfaçam , satisfazendo suas condições de minimalidade (o pré-processamento garante ). Esse conjunto certamente conterá um ponto no hiperplano se houver um.v 1 x 1 + ⋯ + v 1 x n ≤ s | S c | ≥ n v 1 x 1 + ⋯ + v 1 x n = sO v1x1+⋯+v1xn≤s |Sc|≥n v1x1+⋯+v1xn=s
fonte
Parece-me que você está tentando chegar ao casco convexo do IP - em essência, é isso que os algoritmos de corte tentam alcançar. Embora existam apelações apelativas, esses métodos se dão mal na prática.
Existe toda a teoria sobre a geração de desigualdades válidas. Um bom ponto de partida seria a teoria dos livros de shrijver da programação inteira.
fonte