假設我在D維空間中有N個點;其中N可以是從4到D + 1的數字。使用(d + 1)點(或更少)創建d維的球體
我想要創建由這N個點定義的最小可能球體,或換句話說,就是包含所有N個點的最小球體(它完全穿過所有這些球體)。
解決方案的變量是中心和半徑。
我與矩陣不好,我想這個問題需要他們?
假設我在D維空間中有N個點;其中N可以是從4到D + 1的數字。使用(d + 1)點(或更少)創建d維的球體
我想要創建由這N個點定義的最小可能球體,或換句話說,就是包含所有N個點的最小球體(它完全穿過所有這些球體)。
解決方案的變量是中心和半徑。
我與矩陣不好,我想這個問題需要他們?
我相信你正在尋找一個(最小)circumsphere爲您的積分x
。正如你所建議的,這樣一個對象可以通過一些線性代數來計算。
給定一組的m
點x
在n
尺寸(m <= n+1)
,使得:
x = [x_11, x_12, ..., x_1n]
[x_21, x_22, ..., x_2n]
.
.
.
[x_m1, x_m2, ..., x_mn]
這是可能的寫下方程半徑R
的公共領域,在X = [X_1,X_2,...,X_n]
中心,通過各通分在x
:
(x_11 - X_1)^2 + (x_12 - X_2)^2 + ... + (x_1n - X_n)^2 = R^2 (1)
(x_21 - X_1)^2 + (x_22 - X_2)^2 + ... + (x_2n - X_n)^2 = R^2 (2)
.
.
.
(x_m1 - X_1)^2 + (x_m2 - X_2)^2 + ... + (x_mn - X_n)^2 = R^2 (m)
擴大每個方程中的二次項,減去(1)
從方程(2)--(m)
,並做一個小的操作,導致了一組線性方程的用於中心X
:
M * X = B
其中:
M = [x_11-x_21, x_12-x_22, ..., x_1n-x_2n]
.
.
.
[x_11-x_m1, x_12-x_m2, ..., x_1n-x_mn]
B = [x_11^2-x_21^2 + x_12^2-x_22^2 + ... + x_1n^2-x_2n^2] * (1/2)
.
.
.
[x_11^2-x_m1^2 + x_12^2-x_m2^2 + ... + x_1n^2-x_mn^2] * (1/2)
注意M
爲(m-1) x n
矩陣,而B
是一個(m-1) x 1
載體。
顯然,當m = n+1
時,矩陣是正方形的,並且中心X
有一個唯一的解決方案,完全描述了與點x
相關的環。 (半徑可以從X
到任何x_i
的距離獲得)。
當m < n+1
解決方案是非唯一的,並有一個無限的環球家庭。在這種情況下,需要將附加約束添加到矩陣M
以提供解決方案。
在你的情況,我認爲你可能會希望限制X
趴在由點x
描述的公共超平面,但我會擁有更多的有點想想這...的
待辦事項你想要最小半徑的球體,球體是否正好穿過每個點,或者其他什麼? – 2014-09-25 21:03:34
A(可能但不一定是最小的)球完全通過每個點。抱歉,模棱兩可。我將編輯原始帖子。 – ErroneousFatality 2014-09-25 21:08:25