You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: plan_route.m
    path of file: ./repos/Mathmatic_Modeling_CUMCM/CUMCM2018/Project/Case2
    
    the code of the file until where you have to start completion: function [Plan,Duration] = plan_route(Position,Free,Limit_Time,Group,CNC_Artifacts,CNC_Process)
%Plan_Route 找到指定点中，最优的安排。
% 给出车辆所在位置，空闲的CNC，决策时间限制；
%2018_Mathmatic_Modling_Problem-B
%%
%Author:YXP
%Email:yxp189@foxmal.com
%Please feel free to contact us for any questions,thank you!
%%
%Import data
Move_Duration = ...%移动用时;行-不同距离；列-不同组别
    [20	23	18;...
    33	41	32;...
    46	59	46;];

Process_Duration = ...%加工用时;行-不同工序安排；列-不同组别
    [560 580 545;...
    400	280	455;...
    378	500	182;];

Load_Duration = ...%上下料（装载）用时；第一行-1/3/5/7；第二行-2/4/6/8；
    [28	30 27;...
    31 35 32;];

Clean_Duration = ...%清洗用时；列-不同组别

    
function [Plan,Duration] = plan_route(Position,Free,Limit_Time,Group,CNC_Artifacts,CNC_Process)
%Plan_Route 找到指定点中，最优的安排。
% 给出车辆所在位置，空闲的CNC，决策时间限制；
%2018_Mathmatic_Modling_Problem-B
%%
%Author:YXP
%Email:yxp189@foxmal.com
%Please feel free to contact us for any questions,thank you!
%%
%Import data
Move_Duration = ...%移动用时;行-不同距离；列-不同组别
    [20	23	18;...
    33	41	32;...
    46	59	46;];

Process_Duration = ...%加工用时;行-不同工序安排；列-不同组别
    [560 580 545;...
    400	280	455;...
    378	500	182;];

Load_Duration = ...%上下料（装载）用时；第一行-1/3/5/7；第二行-2/4/6/8；
    [28	30 27;...
    31 35 32;];

Clean_Duration = ...%清洗用时；列-不同组别
    [25	30 25];

%Decision
Size_free = size(Free);
num = 1;
Choice = Free;

for i=1:Size_free(2)
    if  (CNC_Artifacts(i)==1)%&&(CNC_Process(i)==2)
        Choice(Size_free(2)+num) = Free(i);
        num = num+1;
    end