Optimizing two vectors of different sizes
1 次查看(过去 30 天)
显示 更早的评论
I am working to optimize the following problem:
r=optimvar('r',size(S,1),'LowerBound',0,'UpperBound',1);
B= optimvar ('B', size(dm,2));
p=prob2matrices({r, B},'Constraints', sum(r)<=1);
%Solving optimization problem
Roptimal=lsqlin([S', 1], dm(:), p.Aineq,p.bineq,[],[],p.lb,p.ub)
Where S is a n x m matrix, and dm is a m x 1 matrix. The result is that r (n x 1 natrix) and B (m x 1 matrix) are different sizes, and cannot be concatenated. The equation I am essential trying to solve is as follows:
%minimize "e2"
e= dm - (S'*r+B)
e2= e*e'
I recogonize I am probably not using an appropriate function. Any help would be greatly appreciated.
2 个评论
Nagasai Bharat
2021-5-24
Hi,
From the equation (r' * S) would be a 1 x m matrix whereras B is a m x 1 matrix. Try to cross-check as a transpose of B would be needed to have an addition operation.
采纳的回答
Matt J
2021-5-24
编辑:Matt J
2021-5-24
r=optimvar('r',n,'LowerBound',0,'UpperBound',1);
B= optimvar ('B', m);
[p,idx]=prob2matrices({r, B},'Constraints', sum(r)<=1);
C=nan(m,m+n);
C(:,idx.r)=S';
C(:,idx.B)=eye(m);
Roptimal=lsqlin(C, dm(:), p.Aineq,p.bineq,[],[],p.lb,p.ub);
sol=x2sol(Roptimal,idx), %solution
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Multiobjective Optimization 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!