How to specify Multiple constraints for LSQLIN
조회 수: 3 (최근 30일)
이전 댓글 표시
I have X = 50 data points for 6 parameters, resulting in output vector Y of 50 data points. I have first constrained the problem so that the Y predicted values are > 0 by setting A = -X, b = 0*Y, and solved via BETA = lsqlin(X,Y,A,b) . I now want to specify multiple constraints so BETA(1)*X(1) + BETA(2)*X(2) is always > 0 , BETA(3)*X(3) + BETA(4)*X(4) > 0 , and BETA(5)*X(5) + BETA(6)*X(6) > 0 for all 50 predicted values. Can someone help me with this? Thanks.
댓글 수: 0
채택된 답변
Matt J
2013년 6월 18일
tmp={X(:,1:2),X(:,3:4),X(:,5:6)};
A=-[X;blkdiag(tmp{:})];
b=zeros(size(A,1),1);
lsqlin(X,Y,A,b)
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Linear Least Squares에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!