LSE

バージョン 1.1.0.0 (4.56 KB) 作成者: John D'Errico
A linear least squares solver, subject to linear equality constraints
ダウンロード: 6K
更新 2010/6/30

ライセンスの表示

This submission was written by request - as a tool to handle linear least squares problems, subject to linear equality constraints that may potentially be rank deficient. (It handles problems with full rank constraints of course too.) In the event of a rank deficient constraint system, it tests for consistency of the constraints.

I added a few other features to LSE:

- It allows multiple right hand sides to the least squares problem, fully vectorized of course.
- Weights may be supplied.
- You are offered a choice of least squares solvers, either backslash or pinv.

LSE solves the problem (for an unknown vector x)

argmin norm(A*x - b)

subject to the constraints

C*x = d

As an example, consider the random system
A = rand(10,3);
b = rand(10,1);

With a rank deficient constraint set
C = [1 1 1;1 1 1];
d = [1;1];

X = lse(A,b,C,d)
X =
0.5107
0.57451
-0.085212

Verify that the constraints are satisfied

C*X
ans =
1
1

Column pivoting is used to eliminate variables from the constraint system when \ is specified, and when pinv is specified, an svd is used for the final solution.

引用

John D'Errico (2024). LSE (https://www.mathworks.com/matlabcentral/fileexchange/13835-lse), MATLAB Central File Exchange. 取得済み .

MATLAB リリースの互換性
作成: R2006b
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
カテゴリ
Help Center および MATLAB AnswersLinear and Nonlinear Regression についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
バージョン 公開済み リリース ノート
1.1.0.0

Bug fix - Single constraint problems on R2009 releases failed due to a qr issue - this fix repairs that bug.