2014-11-10 1 views
0

그래, 그래서 lsqlin을 사용하여 다음 행렬 A에 의해 주어진 제약 선형 선형 최소 제곱 문제를 풀었습니다. A = M (:, 1 : end-1) 및 b = M (:, end), Pxyz = [0.5000,0.9000]이다.lsqlin lambda interpretation

M = 

      -0.9000   0 0.3600 
      0.9000   0 1.2600 
       0 -0.9000   0 
       0 0.9000 1.6200 

    [X_result,resnorm,residual,exitflag,output,lambda]=... 
lsqlin(eye(2),Pxyz, M(:,1:end-1), M(:,end),[],[],[],[],Pxyz,... 
optimoptions('lsqlin','Display','off','MaxIter',100)); 

내 문제는 lambda.ineqlin이 잘못된 것으로 보입니다 (또는 해석 방법을 모르겠다).

I은 ​​X가 (제 1 변수)를 의심 할 이러한 문제점

는 lambda.ineqlin 결과 동안 0 < = Y < = 1.8 경계 -0.4 < = X < = 1.4 및 y (2 가변)에 묶여 is :

lambda.ineqlin = 

    0 
    0 
    0 
    0 

내가 여기에서 무엇을 놓칠 수 있습니까?

답변

0

저는 누군가에게 관련성이 있다고 생각하므로 제 자신의 질문에 대답하고 있습니다.

람다는 방정식의 직접 경계가 아니라 라그랑 지 승수를 제공합니다. 제시된 예에서, 함수의 전역 최대 값은 X_result = Pxyz에 있으며, 이는 Ax < = b 제약 조건을 따르며, 따라서 활성 제한 조건이 없으므로 null Lagrange 곱셈기가됩니다.

또 다른 관점에서,이 결과는 구속되지 않은 선형 최소 제곱에서도 얻을 수 있는데, 글로벌 최대 값은 Ax < = b를 준수합니다.