2016-03-29 7 views
0

この質問は、基本的な線形代数に関する:単純マトリクスMathWorks社のMATLAB mannipulation

w = [100 200 300 400]' 
M = [0.3378 0.1800;0.1252 0.1200; 0.3759 0.4900; 0.1611 0.2100] 

それらを関係式は、MX = Wです。我々はxを見つけるように言われている。 xは単純にw * M^-1であるが、行列の次元は乗算のためには一致しない。 xを得る方法はありますか?

私たちに与えられたヒントは、 "rref([M w])をチェックして、xとwに関する式が一致しているかどうかを確認することです。"

+0

自分の努力を何ら*払わない宿題については、[欲しい](http://meta.stackexchange.com/questions/10811/how-do-i-ask-and-answer-homework-questions)。 – zeeMonkeez

答えて

0

の特異性を心配する必要はありません、あなたが取得疑似逆を取っているので:

のシステムである
0.3378x + 0.1800y = 100 
0.1252x + 0.1200y = 200 
0.3759x + 0.4900y = 300 
0.1611x + 0.2100y = 400 

方程式。 あなたが拡大行列にこれを入れてRREFフォームを取得することができるということでRREF(M)

のために解くことによってベクトルxについて解くことができ、あなたは行列の逆を取ることができます示して従ってベクトルxについて解くことができる。

0

あなたはM '* Mは正方行列で、これはある

x=pinv(M' * M) * M' * w 

、Xを計算するには、次の式を使用することができます。 xは2行1列の行列になります。我々はM行列で、ベクトルxを乗じてM '* M

+0

ここで、pinv(M '* M)* M'はpinv(M)に等しい。 – KKS

0

すべての最小二乗問題はバックスラッシュ演算子(またはlinsolve)を使用し、エシェロン形式またはガウス消去を使用しないでください。

解決策はM\wで与えられます。これは本質的にImedha Sudasinghaが書いたものですが、バックスラッシュ演算子で数値的にはるかに安定して最適化されています。

関連する問題