91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

RGV動態調度問題,通過嚴格限定其單步時間操作完成時間最短而得到的最優化方案,在無故障率的前提下,只要限定初始RGV機車位置,便可以得到唯一的行駛軌跡和規律,通過對其初始下料順序全排列進行優化,得到的最理想解即為接近最優解。而在有故障率的情況下,通過weibull曲線可以得出其故障時間相關期望,由期望結合實況模擬仿真,并不斷循環,可以得到無數確定初始下料順序下的調度優解,反應出RGV運行過程在不同場景下的不同規律。

資源截圖

代碼片段和文件信息

%%%%%%%%%%%%%%%%%%國賽單工序無故障代碼

clc
clear
ord_all=perms([1?2?3?4?5?6?7?8]);
n=[];
for?j=1:40320
ord=ord_all(j:);
ord=[8?5?4?2?6?1?3?7]
%para=[0?20?33?46?560?400?378?28?31?25];
%para=[0?23?41?59?580?280?500?30?35?30];
para=[0?18?32?46?545?455?182?27?32?25];
t=para(1:4);
step1=para(5);%CNC加工完成一個一道工序的物料所需時間 560
step21=para(6);%CNC加工完成一個兩道工序物料的第一道工序所需時間 400
step22=para(7);%CNC加工完成一個兩道工序物料的第二道工序所需時間 378
updown1=para(8);%RGV為CNC1#,3#,5#,7#一次上下料所需時間 28
updown2=para(9);%RGV為CNC2#,4#,6#,8#一次上下料所需時間 31
t_wash=para(10);%RGV完成一個物料的清洗作業所需時間 25

cnc=zeros(85);%cnc的狀態01、上料開始時間、加工剩余時間、距離、上下料時間每次清洗完更新
cnc_position=[11223344];
grv_position=1;
%初始化
cnc(:1)=1;%初始都在加工狀態
dist=zeros(18);
ts=zeros(18)‘;
for?i=1:8
????dist(i)=abs(cnc_position(ord(i))-grv_position);
????ts(i)=t(dist(i)+1);
????grv_position=cnc_position(ord(i));
end
cnc(:5)=[updown1updown2updown1updown2updown1updown2updown1updown2];
cnc(ord(:)2)=cumsum([ts(1)cnc(ord(1)5)+ts(2)cnc(ord(2)5)+ts(3)cnc(ord(3)5)+ts(4)...
?????????????????cnc(ord(4)5)+ts(5)cnc(ord(5)5)+ts(6)cnc(ord(6)5)+ts(7)cnc(ord(7)5)+ts(8)]);
t_work0=cnc(ord(8)2)-cnc(:2);
cnc(:3)=step1-t_work0;
cnc(:4)=abs(cnc_position-grv_position);

t_global=cnc(ord(8)2);%全局進行時
output_final=[];
%?para=[0?20?33?46?560?400?378?28?31?25];
%?t=para(1:4);
%?%RGV移動1個單位所需時間 20
%?%RGV移動2個單位所需時間 33
%?%RGV移動3個單位所需時間 46
%?step1=para(5);%CNC加工完成一個一道工序的物料所需時間 560
%?step21=para(6);%CNC加工完成一個兩道工序物料的第一道工序所需時間 400
%?step22=para(7);%CNC加工完成一個兩道工序物料的第二道工序所需時間 378
%?updown1=para(8);%RGV為CNC1#,3#,5#,7#一次上下料所需時間 28
%?updown2=para(9);%RGV為CNC2#,4#,6#,8#一次上下料所需時間 31
%?t_wash=para(10);%RGV完成一個物料的清洗作業所需時間 25
%?
%?cnc=zeros(85);%cnc的狀態01、上料開始時間、加工剩余時間、距離、上下料時間每次清洗完更新
%?%初始化
%?cnc(:1)=1;%初始都在加工狀態
%?cnc(:2)=cumsum([0updown1updown2+t(2)updown1updown2+t(2)updown1updown2+t(2)updown1]);
%?t_work0=cnc(82)-cnc(:2);
%?cnc(:3)=step1-t_work0;
%?cnc(:4)=[33221100];
%?cnc(:5)=[updown1updown2updown1updown2updown1updown2updown1updown2];
%?t_global=cnc(82);%全局進行時
%?grv_position=4;
%?cnc_position=[11223344];
%?output_final=[];

while(t_global<=8*3600)
????if(length(find(cnc(:1)==0))==0)
????????[t_left_mini_min]=min(cnc(:3));
????????t_global=t_global+t_left_min;%如果所有cnc都在加工狀態,時間推移至有信號
????????cnc(i_min1)=0;%更新cnc狀態
????????cnc(:3)=cnc(:3)-t_left_min;%更新cnc加工剩余時間
????end
????
????if(length(find(cnc(:1)==0))==1)
????????po=find(cnc(:1)==0);
????????t_s=t(cnc(po4)+1);
????????t_updown=cnc(po5);
????????t_total=t_s+t_updown+t_wash;%rgv運行至cnc并完成下上料及清洗工作總時間
????????t_global=t_global+t_total;%更新時間至清洗完成
????????t_left=cnc(:3)-t_total;
????????%在rgv工作和清洗期間cnc完成后,狀態和加工剩余時間更新
????????for?i=1:8
????????????if(t_left(i)<=0)
????????????????cnc(i3)=0;???
????????????????cnc(i1)=0;
????????????else
????????????????cnc(i3)=cnc(i3)-t_total;???
????????????????cnc(i1)=1;
????????????end
????????end
????????t_up=cnc(po2);
????????t_down=

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????5127??2018-09-16?13:40??18國賽b題\guosaib1.m

?????文件??????10538??2018-09-16?16:02??18國賽b題\guosaib2.m

?????文件??????15418??2018-09-23?13:51??18國賽b題\guosaib31.m

?????文件??????17480??2018-09-16?18:31??18國賽b題\guosaib32.m

?????目錄??????????0??2018-09-23?13:53??18國賽b題

-----------?---------??----------?-----??----

????????????????48563????????????????????5


評論

共有 條評論