找到最小的立方体RnRn包含两个区域之间的交集

计算科学 几何学
2021-12-08 00:04:12

我不认为这是一个纯粹的数学问题,所以我把它贴在这里。

假设我们在中有两个区域: Rn

{x:axb}
{x:i=1n|xi|c}

问题是找到包含两个区域之间交集的最小可能立方体。

如果,则第一个区域是正方形,第二个区域是菱形,问题看起来像这样(红色正方形是问题的解决方案):xR2

在此处输入图像描述

如果一个人像图片上的那样处理一个特殊的情况,这个问题就相当容易了。我们可以找到穿过正方形的直线的方程,并找到值,其中直线等于表示正方形边的常数。但是,我们使用正方形的哪一边取决于正方形的位置(它甚至可以被几条线交叉)。一般来说,走这条路似乎有很多特殊情况需要处理。xy

我想知道是否有可以应用于这个问题的一般程序,或者是否有人知道这个特定问题的优雅解决方案。

1个回答

这是一个建议。将您的问题分为两部分:(1)构造交叉点,(2)找到最小的立方体。

(1) 交集是由两个形状的不等式的并集定义的多面体。这被称为多面体的H表示。有用于从其H表示构建多面体的软件。polymake是一种选择。本质上,您想将H -representation 转换为 V -representation

(2) 这是较容易的一半。从极端顶点坐标中找到最小的边界框。然后将盒子肥成立方体。