• 大小: 12KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-11
  • 语言: Matlab
  • 标签: 电梯调配  

资源简介

多部电梯调配优化仿真MATLAB程序,主要思想为最短等待时间,可以作为相关研究人员的参考

资源截图

代码片段和文件信息

function wt=arrange(statesignal)
%signal(1) 发出signal的楼层号
%signal(2) signal的方向:0代表向下1代表向上
%state(11)elevator当前所在楼层
%state(12)elevator的运行方向,定义同signal
%state(13)elevator的拥挤度
%state(2,:)elevator所响应的信号集合
%state(3,:)elevator所响应的停站集合
%state(4,:)elevator所响应的信号所对应的信号候梯时间的集合
%state(5,:)elevator所响应的信号所对应的方向的集合
%若楼层数为N则 state是5行N列的矩阵
N=7;%楼层选择为7层
%求距离层数dis
%电梯是上行方向
if(state(12)==1)
    if(signal(2)==1)
        if(state(11)<=signal(1))
            dis=signal(1)-state(11);
        else
            if(max(state(3:))==0)
                dis=state(11)-signal(1);
            else
            dis=2*max(state(3:))-state(11)-signal(11);
            end
        end
    else
        if(max(state(3:))==0)
            dis=abs(state(11)-signal(1));
        else
            if(signal(1)>=max(state(3:)))
                dis=signal(1)-state(11);
            else
                dis=2*max(state(3:))-state(11)-signal(11);
            end
        end
    end
end
%电梯是下行方向
for i=1:length(state(3:))
    if(state(3i)~=0)
        temp(i)=state(3i);
    else
        temp(i)=N;
    end
end
if(state(12)==0)
    if(signal(2)==0)
        if(state(11)>=signal(1))
            dis=state(11)-signal(1);
        else
            if(max(state(3:))==N)
                dis=signal(1)-state(11);
            else
            dis=abs(2*min(state(3:))-state(11)-signal(11));
            end
        end
    else
        if(max(state(3:))==N)
            dis=abs(state(11)-signal(1));
        else
            if(signal(1)<=min(state(3:)))
                dis=abs(signal(1)-state(11));
            else
                dis=abs(2*min(state(3:))-state(11)-signal(11));
            end
        end
    end
end
%计算起停次数
sst=0;
for i=1:length(state(3:))
    if(state(3i)~=0)
       sst=sst+1;
    end
end
%计算电梯从接受signal响应到为其提供服务预停站次数stopTime
temp(1:)=state(2:);
temp(2:)=state(5:);
num=1;
% 除0
for i=1:length(temp)
    if(temp(2i)~=0)
        temp0(:num)=temp(:i);
        num=num+1;
    end
end
temp=[];
temp=temp0;temp0=[];
%电梯是上行方向
if(state(12)==1)
    for i=1:length(temp(1:))-1
        for j=i+1:length(temp(1:))
            if(temp(2j)>temp(2i))
                temp1=temp(:j);
                temp(:j)=temp(:i);
                temp(:i)=temp1;
            elseif(temp(1j)                temp1=temp(:j);
                temp(:j)=temp(:i);
                temp(:i)=temp1;
            end
        end
    end
    stopTime=0;
    if(signal(2)==1)
        for i=1:length(temp(1:))
            if(signal(1)>temp(1i)&&temp(2i)==1)
                stopTime=stopTime+1;
            end
        end
    end
    if(signal(2)==0)
        for i=1:length(temp(1:))
            if(temp(2i)==1)
                stopTime=stopTime+1;
            elseif(signal(1)                stopTime=stopTime+1;
            end
       

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        4691  2017-06-21 17:44  elevator_control\arrange.m
     文件        1368  2017-06-21 21:55  elevator_control\ceshi.m
     文件         267  2008-12-08 15:01  elevator_control\FAwt.m
     文件        1173  2008-12-12 14:38  elevator_control\FAwtContent.m
     文件        1492  2008-12-12 11:53  elevator_control\FAwtConW.m
     文件         284  2008-12-11 21:28  elevator_control\FDis.m
     文件        7325  2017-06-20 20:30  elevator_control\Felement.m
     文件         463  2008-12-12 16:14  elevator_control\fig.m
     文件         266  2008-12-08 15:02  elevator_control\FJam.m
     文件         277  2008-12-08 15:01  elevator_control\FLwp.m
     文件        1072  2008-12-12 15:16  elevator_control\FRnc.m
     文件        1471  2008-12-12 10:56  elevator_control\FRncW.m
     文件         267  2008-12-11 21:27  elevator_control\FSst.m
     文件        1203  2008-12-12 16:04  elevator_control\FTripContent.m
     文件        1502  2008-12-12 11:53  elevator_control\FTripConW.m
     文件         300  2008-12-12 09:35  elevator_control\FtripTime.m
     文件        1917  2017-06-21 20:53  elevator_control\guestsimu.m
     文件        1916  2017-06-21 16:38  elevator_control\temp.m
     文件         575  2008-12-11 09:50  elevator_control\tesElem.m
     文件         511  2017-06-20 16:27  elevator_control\test.m
     文件         908  2008-12-15 11:14  elevator_control\TestALL.m

评论

共有 条评论