MATLAB Answers

Solve Overdetermined Linear System

61 ビュー (過去 30 日間)
Chloe
Chloe 2019 年 10 月 6 日
コメント済み: Rena Berman 2019 年 10 月 28 日
Hi,
I have read that an overdetermined system is one with more rows (equations) that columns(unknowns).
I believe that an overdetermined system is typically one that is not solvable, unless one of the equations in the linear system is a linear combination of the other.
However, looking at the code below, it doesn't seem that any of the equations is a linear combination of the others. However, matlab still solves the system once
the script is executed. Any explanation is appreciated.
clear all
% Specify a system where the number of unknowns is less than the number of
% equations
comment='starts here'
disp(comment)
A=[ 2 2 -2; 6 4 4; 10 8 6; 11 15 9];
v=[10 2 8 20]';
C=A\v

  1 件のコメント

Rena Berman
Rena Berman 2019 年 10 月 28 日
(Answers Dev) Restored edit

サインイン to comment.

回答 (1 件)

Bruno Luong
Bruno Luong 2019 年 10 月 6 日
編集済み: Bruno Luong 2019 年 10 月 6 日
For overdetermined system the "\" returns least-square solution, meaning it doesn't solve exactly your system, but returnes the solution that minimizes
norm( A*C - v, 2).
To persuade this is the case, you can multiply A*C and verifies it does not match v
>> A*C
ans =
9.9655
1.8368
8.1255
19.9812
>> norm(A*C-v, 2)
ans =
0.2096
This is the best "MATLAB" can do. You can try any other C, and you won't ever get any better than 0.2096.

  0 件のコメント

サインイン to comment.

サインイン してこの質問に回答します。


Translated by