Для заданного набора гиперплоскостей, определяемых нормальными векторами , его типами ячеек (или знаковыми векторами) являются все векторы t ∈ { + , - } m, для которых существует вектор v ∈ R d так , что ⟨ v , ч я ⟩ ≠ 0 и т я = знак ( ⟨ v , ч я ⟩ )имеет место для всех . Здесь, ⟨ U , V ⟩ обозначает скалярное произведение , а знак ( х ) обозначает знак ( + или - ) от ненулевого вещественного числа х .
Вопрос: Какой самый быстрый известный алгоритм для обратной операции? Учитывая набор типов ячеек , мы хотим вычислить некоторый набор гиперплоскостей в как можно меньшем количестве измерений, чтобы его типы ячеек были надмножеством t 1 , … , t n .
Ответы:
Это эквивалентно вычислению ранга знака матрицы, которая является NP-трудной, как показано в этой статье . Таким образом, вы не можете ожидать слишком эффективного алгоритма.
источник