单纯形算法 matlab
Posted wander-clouds
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单纯形算法 matlab相关的知识,希望对你有一定的参考价值。
%单纯形 %目标函数标准化 % min x1-3x2+2x3 %输入参量 N=[3 -1 2;-2 4 0;-4 3 8]; B=eye(3); A=[N B]; cn=[1;-3;2]; cb=zeros(3,1); c=[cn;cb]; b=[7;12;10]; while(1) invb=inv(B); cn=cn-N‘*invb‘*cb; if cn>=0 xb=B; disp(‘find‘) xb break else p=(find(cn==min(cn)));%enter to B b=B; a=A(:,p); a=Ba; m=b./a; q=(find(m==min(m(m>0))));%out of B %swap t=B(:,q); B(:,q)=N(:,p); N(:,p)=t; t=cb(q); cb(q)=cn(p); cn(p)=t; end end B n=size(A,2); %提取A的列数 a=zeros(size(A‘)); for i=1:n a(i,:)=A(:,i); end x=zeros(1,6); for i=1:n for j=1:3 if a(i,:)==B(:,j)‘ x(i)=xb(j); end end end x
以上是关于单纯形算法 matlab的主要内容,如果未能解决你的问题,请参考以下文章
优化求解基于matlab单纯形表算法求解线性规划(LP)问题含Matlab源码 1540期