【调度优化】基于遗传算法求解工件的并行调度组合优化问题附matlab代码

简介: 【调度优化】基于遗传算法求解工件的并行调度组合优化问题附matlab代码
+关注继续查看

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测 雷达通信 无线传感器

信号处理 图像处理 路径规划 元胞自动机 无人机 电力系统

⛄ 内容介绍

对最小化完工时间的并行多机调度问题提出了一种遗传算法,并在问题形成,遗传算法编码,变异方法等方面作了研究,并用计算实例表明遗传算法能适用于大规模并行多机调度问题.

⛄ 部分代码

%% GA算法求解并行调度问题

 %% 加载问题的数据

clc, clear, close all

[~, ~, timetable] = xlsread('2.xls','Sheet1','B1:E30');

timetable = cell2mat(timetable);

cities = 30;

global rec tag1 len;

rec = zeros(500,35);

tag1 = 1;

len = [7, 7, 8, 8];

%% 定义目标函数

FitnessFcn = @(x) parallel_scheduling_fitness(x,timetable);

% gaplotbestf

%% 设置优化属性并执行遗传算法求解

options = optimoptions(options,'CreationFcn',@create_permutations, 

                        'CrossoverFcn',@crossover_permutation, ...

                        'MutationFcn',@mutate_permutation, ...

                        'PlotFcns', @gaplotbestf, ...

                        'MaxGenerations',800,'PopulationSize',60, ...

                        'MaxStallGenerations',200,'UseVectorized',true);

numberOfVariables = cities;

[x,fval,reason,output] = ...

%% 输出并行调度问题的工件分配方案并可视化

disp('工件的分配顺序为:')

order = cell2mat(x);

fprintf('机器一:%d %d %d %d %d %d %d \n', order(1:len(1)))

fprintf('机器二:%d %d %d %d %d %d %d \n', order(len(1) + 1:len(1) + len(2)))

fprintf('机器三:%d %d %d %d %d %d %d %d \n', order(len(1) + 1 + len(2):len(1) + len(2) + len(3)))

fprintf('机器四:%d %d %d %d %d %d %d %d \n', order(len(1) + len(2) + len(3) + 1:len(1) + len(2) + len(3) + len(4)))

fprintf('四台机器分别耗时:%d %d %d %d \n', rec(tag1 -1,31:34))

plot((1:tag1 - 1), rec(1:tag1 - 1,35),'b')

xlabel('迭代次数')

ylabel('最短CMax')

title('并行调度问题')

⛄ 运行结果

image

image

⛄ 参考文献

[1]赵迪. 基于遗传算法的集配中心作业调度优化问题研究[D]. 北京交通大学, 2010.

[2]柳丹丹, 龚祝平, 邱磊. 改进遗传算法求解同类并行机优化调度问题[J]. 机械设计与制造, 2020(4):4.

⛄ Matlab代码关注

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料


相关文章
|
20天前
|
机器学习/深度学习 算法 数据库
m基于GA-CNN遗传优化卷积神经网络的手势识别算法matlab仿真
m基于GA-CNN遗传优化卷积神经网络的手势识别算法matlab仿真
27 1
|
2月前
|
机器学习/深度学习 数据采集 算法
m基于GA-LSTM遗传优化长短期记忆网络的电力负荷数据预测算法matlab仿真
m基于GA-LSTM遗传优化长短期记忆网络的电力负荷数据预测算法matlab仿真
41 4
|
2月前
|
机器学习/深度学习 传感器 算法
SSA-ELM回归预测 | Matlab 基于麻雀优化算法优化极限学习机的回归预测
SSA-ELM回归预测 | Matlab 基于麻雀优化算法优化极限学习机的回归预测
|
2月前
|
机器学习/深度学习 传感器 算法
RUN-XGBOOST回归预测 | Matlab 龙格库塔优化xgboost回归预测
RUN-XGBOOST回归预测 | Matlab 龙格库塔优化xgboost回归预测
|
2月前
|
机器学习/深度学习 传感器 算法
SSA-KELM分类预测 | Matlab麻雀优化算法优化核极限学习机分类预测
SSA-KELM分类预测 | Matlab麻雀优化算法优化核极限学习机分类预测
|
2月前
|
机器学习/深度学习 传感器 算法
SMA-KELM分类预测 | Matlab黏菌优化算法优化核极限学习机分类预测
SMA-KELM分类预测 | Matlab黏菌优化算法优化核极限学习机分类预测
|
2月前
|
机器学习/深度学习 传感器 算法
PSO-KELM分类预测 | Matlab粒子群算法优化核极限学习机分类预测
PSO-KELM分类预测 | Matlab粒子群算法优化核极限学习机分类预测
|
2月前
|
机器学习/深度学习 传感器 算法
GA-KELM分类预测 | Matlab遗传算法优化核极限学习机分类预测
GA-KELM分类预测 | Matlab遗传算法优化核极限学习机分类预测
|
2月前
|
机器学习/深度学习 传感器 算法
FOA-BP分类预测 | Matlab果蝇优化算法优化BP神经网络分类预测
FOA-BP分类预测 | Matlab果蝇优化算法优化BP神经网络分类预测
|
2月前
|
机器学习/深度学习 传感器 算法
SMA-BP分类预测 | Matlab黏菌优化算法优化BP神经网络分类预测
SMA-BP分类预测 | Matlab黏菌优化算法优化BP神经网络分类预测
相关产品
机器翻译
推荐文章
更多