Вычислить многомерный многогранник из заданного набора знаковых векторов

11

Для заданного набора гиперплоскостей, определяемых нормальными векторами , его типами ячеек (или знаковыми векторами) являются все векторы t { + , - } m, для которых существует вектор v R d так , что v , ч я0 и т я = знак ( v , ч я)h1,,hmRdt{+,}mvRdv,hi0ti=sign(v,hi)имеет место для всех . Здесь, U , V обозначает скалярное произведение , а знак ( х ) обозначает знак ( + или - ) от ненулевого вещественного числа х .iu,vsign(x)+x

Вопрос: Какой самый быстрый известный алгоритм для обратной операции? Учитывая набор типов ячеек , мы хотим вычислить некоторый набор гиперплоскостей в как можно меньшем количестве измерений, чтобы его типы ячеек были надмножеством t 1 , , t n .t1,,tnt1,,tn

Holger
источник
1
Кстати, не ясно, что является внутренним произведением гиперплоскости и вектора. Вы намеревались, чтобы был нормальным вектором i-й гиперплоскости? hii
Сашо Николов
Да, они должны быть нормальными векторами - я формально указал именно то, что я ищу.
Хольгер

Ответы:

5

Это эквивалентно вычислению ранга знака матрицы, которая является NP-трудной, как показано в этой статье . Таким образом, вы не можете ожидать слишком эффективного алгоритма.

Сашо Николов
источник