PB13204065买热哈巴·买买提明《运筹学》实验报告 下载本文

mark=0; for j=1:m if (D(j,2)==i) mark=1;

X(i)=xB(D(j,1)); %利用D找出xB与X之间的关系。。

end end if mark==0

X(i)=0; %如果D中没有X(i),则X(i)为非基变量,所以X(i)=0 end end

fprintf('基向量为:'); X fprintf('目标函数值为:') ; f else

13

if(B\\A(:,k)<=0) % 如果B\\A(;,k)中的每一个分量都小于零。。

flag=0;

fprintf(' \\n 此问题不存在最优解!\\n'); %若B\\A(:,k)的第k列均不大于0,则该问题不存在最优解 else

b1=B\\b'; temp=inf; for i=1:m

if ((A(i,k)>0) && (b1(i)/(A(i,k)+eps))

end end

% fprintf('x(%d)进基,x(%d)退基\\n',k,D(r,2)); %显示进基变量和退基变量

14

B(:,r)=A(:,k);

cB(r)=c(k); %确定进基退基变量后,相应的基矩阵及新基对应的目标值的c也相应改变 D(r,2)=k; end end end end

clc;clear

disp('实验二第一小题解:x1表示取值,

%x:最优解 %f:目标函数最优值 %c:目标函数系数向量

15

f1表示最小值')

%A:系数矩阵 %b:m维列向量 c=[-3 1 1];

A=[1 -2 1;4 -1 -2;2 0 -1]; b=[11;-3;-1]';

[X1,f1]=DANCHUN(A,b,c);

disp('实验二第二小题解:x表示取值,c=[1 1]; A=[1 -2;1 2]; b=[4;8]';

[X2,f2]=DANCHUN(A,b,c); disp('最大值') f2=-f2;

四、实验结果分析与评价

16

f表示最小值')