0

我有一个包含 10 000 行和 10 列的数据。我研究的第一个目标是根据这些数据计算“凸包”。包“scipy”可以很容易地做到这一点,我可以得到顶点,不同超平面的参数,例如:b0 + b1.x1 + b2.x2 + .... + b10.x10 = 0 其中:(b0, b1,...,b10) 是凸包一个面的参数(我可以知道上面的顶点)。

from scipy.spatial import ConvexHull, convex_hull_plot_2d
import numpy as np
fit_hull = ConvexHull(data)
V = fit_hull.vertices
parameters = fit_hull.equations

我的问题是:我怎样才能统一模拟:凸包上的随机点,知道所有这些?

这很困难,因为在超平面上模拟随机点非常简单,但是在这里,它是一个以 facet 的顶点为界的超平面(例如,有 3 个变量:要创建一个 facet,我需要三个点,所以它会是一个三角形)。

太感谢了

祝你有美好的一天(来自法国)

4

1 回答 1

0
  • 对凸包进行 Delaunay 细分。在 2D 中,这些是三角形,在 3D 中,这些是四面体,您可以获得它们的面积/体积。

  • 随机选择一个三角形/四面体,概率由标准化面积/体积给出。

  • 在这个三角形/四面体中均匀地选取一个点。

于 2022-01-10T10:38:55.443 回答