簡體   English   中英

獲得矩陣 R 的所有可能的線性組合

[英]Getting all possible Linear Combinations of a matrix R

假設我有以下增廣矩陣

100 100 0   100
325 0   500 500

在等式方面:

c1(100) + c2(100) + c3(0) = 100
c1(325) + c2(0) + c3(500) = 500

我無法更改最后一列。 如何找到所有可能的線性組合? 顯而易見的解決方案是 c2 = 1 和 c3 = 1。但是我如何以系統的方式得到它?

我嘗試在 pracma 包中使用 rref 但我得到了

1 0  1.538462   1.5384615
0 1 -1.538462  -0.5384615

我真的不能有任何分數值。

有什么建議嗎?

這是一個欠定的線性方程組。 借助A的 Moore-Penrose 逆,您可以得到它的所有解。 Ainv是的Moore-Penrose逆A 然后A %*% x = b所有解都由Ainv %*% b + (I - Ainv %*% A) %*% w ,其中I是單位矩陣, w是任何向量。

A <- rbind(c(100,100,0), c(325,0,500))
b <- c(100,500)

Ainv <- MASS::ginv(A)

w <- c(1,2,3) # arbitrary
one_solution <- Ainv %*% b + (diag(3L) - Ainv %*% A) %*% w

A %*% one_solution
#      [,1]
# [1,]  100
# [2,]  500

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM