资源简介
运输问题的最低运价问题,文档中打开手动输入price运价、prod产量、sell销量,run就可以显示结果,通过调整可以很方便的让它显示需要的数据。
你值得拥有,无论中国知网、还是百度,都没有完整的matlab运输问题表上作业法算法。
代码片段和文件信息
function [resultpoint1point2]=bestpath(A1ij)
if nargin==0
A =[nan nan 5 2;3 nan nan 1;nan 6 nan 3] %用来测试闭合回路的算法
x=3;y=1;
elseif nargin==3
A=A1;x=i;y=j;
end
move=[1 0;-1 0;0 1;0 -1]; %指针的移动方向,下、上、右、左
[mn]=size(A); %m、n分别为A的行数和列数
R=[];
%------------行的可行性标记
[marksijrowcolB]=mark(Axy); %初始化可行性路径
prev=[0 0]; %用于保存上一次移动时的移动方向
[~R~~~]=seekPath(B0marksmoveRprev0ijrowcol); %查询比和路径
[resultresult1point1point2]=res(ArowcolRmn); %查询结果,用二进制表示路径
function [isfindRtimesrowcolprev]=seekPath(AisfindmarksmoveRprevtimesijrowcol)
if (i==row &&j==col) %判断是否又回到查找起点
times=times+1;
if times==2 %此时回到起点,查找结束
isfind=1;
return
end
end
x=i;y=j;
if isnan(A(ij)) %该数据点为空所执行的算法
next=prev; %如果数据格为空则只能直走
u=i-prev(1);v=j-prev(2); %按照前一次的方向移动
if prev(1)
mrow=2;
else
mrow=1;
end
if marks(u+1v+1mrow)==1
[isfindRtimesrowcol]=seekPath(AisfindmarksmoveRnexttimesuvrowcol);
if isfind==1
R=[R;i j];
return
end
end
else
for k=1:4
if k==1||k==2
mrow=2;
else
mrow=1;
end
u=i+move(k1);
v=j+move(k2);
if prev(1)~=move(k1)||prev(2)~=move(k2) %判断是否原路返回
if marks(u+1v+1mrow)==1
next=[-move(k1)-move(k2)];
[isfindRtimesrowcol]=seekPath(AisfindmarksmoveRnexttimesuvrowcol);
if isfind==1
R=[R;i j];
return
end
end
end
end
end
function [resultresult1point1point2]=res(ArowcolRmn)
[m1n1]=size(R);
point=[];
num=0;
A(rowcol)=0; %为了以后记录方便
result=zeros(mn); %只记录转折点的值
result1=zeros(mn);
result2=zeros(mn);
result2(rowcol)=1;
for i=1:m1
if ~isnan(A(R(i1)R(i2)))
result2(R(i1)R(i2))=1;
end
end
%只保留拐角处的结点,
for i=1:m
T1=find(result2(i:)==1);
if length(T1)>1
result(iT1(1))=1;
result(iT1(length(T1)))=1;
result1(iT1(1))=A(iT1(1));
result1(iT1(length(T1)))=A(iT1(length(T1)));
end
end
for j=1:n
T2=find(result2(:j)==1);
if length(T2)>1
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4668 2013-04-23 17:52 matlab 运输问题表上作业\bestpath.m
文件 8252 2013-04-24 12:45 matlab 运输问题表上作业\vogel.m
目录 0 2013-04-25 21:11 matlab 运输问题表上作业\
- 上一篇:SSIM 全参考图像质量评价 matlab代码
- 下一篇:脉冲噪声程序
相关资源
- SSIM 全参考图像质量评价 matlab代码
- 33节点潮流计算matlab
- 流形学习算法MATLAB代码
- MATLAB与编程英文Chapman之习题解答
- matlab 使用递归方法列出或查找指定目
- 罗盘赌算法Matlab实现
- Bresenham画直线MATLAB实现
- matlab光点识别
- matlab环境下光伏电池典型模型
- 倒立摆 matlab仿真程序
- MatLab解数学方程组
- Gabor小波变换
- 用MATLAB实现彩色图像的灰度化处理
- 数值积分的龙贝格算法MATLAB程序
- MATLAB 贪吃蛇
- Matlab_Active-set算法和
- levinson_durbin算法matlab程序
- 一些用matlab编写的经典遗传算法算例
- matlab矩阵中心化的详细方法
- matlab加椒盐噪声和滤噪的方法
- matlab中将运算结果保存为excel或txt文件
- matlab求方差和标准差的函数用法
- Windows64位系统安装matlab找不到编译器
- canny算子源码(matlab)
- BP神经网络数字识别matlab2014a
- 16qam调制识别matlab
- matlab 2017a Crack 破解文件
- 模糊控制算法程序MATLAB编写)
- adaboost人脸识别 matlab程序
- vb.net2010曲线拟合
评论
共有 条评论