matlab数学建模-矩形板材零部件排样优化设计

Posted studyer_domi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab数学建模-矩形板材零部件排样优化设计相关的知识,希望对你有一定的参考价值。

1、内容简介


538-可以交流、咨询、答疑

2、内容说明

矩形排样问题属于组合最优化问题和NP完全问题,因为存在计算上的复杂性,在一定时间内求其精确全局最优解是相当困难的。对于矩形排样问题,任何算法都难以保证总能得到最优解,目前解决的方法多为各种启发式算法。提高原材料利用率问题是一个系统工程问题,需要从生产管理、优化下料、支持决策等方面提供完备的一体化解决方案。其中优化下料环节中,构造有效的优化算法是关键。矩形件排样不仅适用于矩形零件的排放,而且也是不规则零件排放的基础。本文研究的问题是利用遗传算法,将定长定宽的板材矩形件的优化下料,其中板材为定宽定长,要排放的矩形件数量和规格都是已知的,要求在排放完所有给定矩形件的前提下使所消耗的板材面积最小。

关键词:矩形板材,排样优化,遗传算法

随着中国加入WTO,制造行业的企业面临着更为激烈的市场竞争。为了在竞争中立于不败之地,企业必须想方设法提高经济效益,而提高经济效益的重要途径之一就是通过 提高材料的利用率来降低成本。

矩形件排样在工业上有广泛的应用,目标是使下料过程中的切割损失减少到最少,使得原材料的利用率最高。优化排样算法的研究既有实际应用价值,又有理论意义。矩形排样问题属于组合最优化问题和NP完全问题,因为存在计算上的复杂性,在一定时间内求其精确全局最优解是相当困难的。对于矩形排样问题,任何算法都难以保证总能得到最优解,目前解决的方法多为各种启发式算法。提高原材料利用率问题是一个系统工程问题,需要从生产管理、优化下料、支持决策等方面提供完备的一体化解决方案。其中优化下料环节中,构造有效的优化算法是关键。矩形件排样不仅适用于矩形零件的排放,而且也是不规则零件排放的基础。本文研究的问题是无约束非剪切单一-卷材矩形件的优化下料,其中卷材为定宽,要排放的矩形件数量和规格都是已知的,要求在排放完所有给定矩形件的前提下使所消耗的卷材长度最小。

遗传算法是借鉴生物的自然选择和进化机制的一种全局优化自适应概率搜索算法,具有快速随机的全局搜索能力。对于非常复杂、高度非线性问题的优化求解,表现出比其它传统优化方法更优越的性能,是21世纪智能计算中的核心技术之一。本文对遗传算法做了系统介绍,包括遗传算法的特点、基本实现技术等。对求解矩形件优化排样问题的遗传算法的设计及具体实现进行了详细讨论。

传统的制造业发展历程中,资源的浪费一直是世界各国关注的焦点问题。如何利用现代科技与信息技术努力提高资源利用率,节约原料成本,已成为全世界的研究的热点。我国是全球最大制造业生产国,具有世界上最多的制造企业,因此,即使小幅度对原料利用率的提高,也会为企业创造巨大的财富,从而为国家节省大量资源。排样设计它广泛存在于船舶、玻璃、木材、钢材和造纸等传统制造行业。一种合理的排样方法可以为企业创造巨额的经济财富,排样问题具有很大的研究价值。  

3、仿真分析

clc
close all
clear
global dimension w h
% dimension = [7 4 6 5 2 10;
%              6 7 7 2 5  4];
dimension = [5 4 6 8 2 6 5;
             6 7 7 2 5 6 8];
num = length(dimension);%零件个数
w = 35;
h = 15;
lb = zeros(1,3*num);
ub = [w*ones(1,num) h*ones(1,num) ones(1,num)];
% options = optimoptions('ga','Display','iter');
options = gaoptimset('CrossoverFraction', 0.7,'Display','iter', 'Generations', 30, 'PopulationSize', 40,'TolCon',1e-6);
% ,'TolCon',1e-6,'InitialPopulation',num*300
% ,'PopInitRange',[zeros(1,num*3);ones(1,3*num)]
[x,fval,exitflag,output] = ga(@obj,3*num,[],[],[],[],lb,ub,@yueshu,options)

x(1:num)
x(num+1:2*num)
x(2*num+1:3*num)
[c,ceq]=yueshu(x)

color = 'grmck';
figure
rectangle('position',[0,0,w,h],'EdgeColor','b','LineWidth',3)
xlim([-10 w+10])
ylim([-5 h+10])
hold on
for i = 1:num
    x_1 = x(2*i-1);
    y_1 = x(2*i);
    width = (1-x(num*2+i))*dimension(1,i)+x(num*2+i)*dimension(2,i);
    height = (1-x(num*2+i))*dimension(2,i)+x(num*2+i)*dimension(1,i);
    index = unidrnd(length(color));
    rectangle('position',[x_1,y_1,width,height],'EdgeColor',color(index),'LineWidth',2)
    text(x_1+1,y_1+1,num2str(i))
    hold on
end
hold off

4、参考论文


 

以上是关于matlab数学建模-矩形板材零部件排样优化设计的主要内容,如果未能解决你的问题,请参考以下文章

Matlab:矩形脉冲的傅里叶变换具有非常高的零频率分量

《Hexo: 从零开始编写自己的主题》3. 优化样式,设计自己的主题

路径规划基于matlab汽车零部件循环取货路径优化(三维装载约束)含Matlab源码 1100期

《Hexo: 从零开始编写自己的主题》4. fancybox优化图片展示效果代码高亮以及数学公式

二维装箱基于matlab遗传算法求解矩形地块二维装箱放置优化问题含Matlab源码 1556期

MATLAB代码完整可运行多目标微电网规划设计混合可再生能源系统HRESHybrid Renewable Energy System多目标优化