秀山网站建设,找工作 招聘附近8小时双休,广州网站的设计公司,网站开发参考文献2020年亚太杯APMCM数学建模大赛
A题 激光标记舱口轮廓生成
原题再现#xff1a; 激光是20中的一项重要发明世纪#xff0c;它被称为“最锋利的刀”、“最精确的尺子”和“最不寻常的光”。 激光已越来越多地应用于工业加工#xff0c; 其中可以是就业在各种加工业务例如作…2020年亚太杯APMCM数学建模大赛
A题 激光标记舱口轮廓生成
原题再现 激光是20中的一项重要发明世纪它被称为“最锋利的刀”、“最精确的尺子”和“最不寻常的光”。 激光已越来越多地应用于工业加工 其中可以是就业在各种加工业务例如作为标记、焊接、钻孔、切割、热处理和喷涂。 激光具有良好的方向性可以汇聚成微小的光斑达到高度集中的能源 此外到期了去它的声音单色性 激光是很容易去控制。 激光打标是指用激光对LOGO字符符号图像等进行标记。 在产品表面。 它是一种广泛使用的加工方法具有加工效率高、非接触操作、无耗材、对产品表面变形影响小、标记含量坚固等优点。 激光打标机的舱口工具可用于舱口指定的2D复合曲线图不同舱口参数的设置对不同材料的加工效果影响很大。 方向平行孵化和轮廓平行孵化是孵化的两种基本方式。方向平行舱口也称为“锯齿形”舱口其路径沿平行于最初选定的参考方向的线段移动。 基于这种策略通过将这些并行段连接起来得到连接路径使它们要么从右到左或从左到右要么从左到右和从右到左交替遍历。 而轮廓平行舱口使用偏移段边界曲线作为光滑舱口路径类似于边界曲线。 因此轮廓平行舱口是以螺旋状的方式产生的曲线在恒定距离的曲线边界。 哪种舱口在实践中的应用高度依赖于标记材料和工艺对特定加工任务的影响。 孵化实体必须是封闭的曲线多边形多个相互嵌套的轮廓对象可以通过分组匹配来填充。 对于图形的孵化过程现有的边界轮廓应首先根据边缘距离向内或向外偏移然后再受锯齿形平行或轮廓平行孵化的影响。 舱口曲线应均匀、规则并保持基本平行。 不允许有遗漏填写区域也不允许重复填写区域。 激光标记的孵化应以实时方式在线生成孵化轮廓。 为了满足高效率激光打标的要求舱口曲线应与图形的边界线保持平行最大程度上均匀分布并自动快速生成。 效率是产生孵化数字的重要指标。 请研究图形课题采用锯齿形平行和等高线平行孵化的特点建立孵化的数学模型设计算法讨论算法的效率回答下列问题 1. 实现附件1中单层轮廓图案的锯齿形平行和轮廓平行舱口在这里只考虑水平方向0°度的舱口。 请根据附件1中图的坐标点数据(单位mm)实现两组输入参数下的孵化) (1) 内收缩边界距离1mm舱口线间距1mm (2) 内缩边距0.1mm舱口线间距0.1mm。 在这两组参数下计算锯齿形平行和等高线平行舱口的孵化曲线的孵化线的总长度并计算锯齿形平行舱口的水平线数和等高线平行舱口的圆圈数。 根据孵化程序的多次运行计算平均运行时间(单位ms)计算参数组2)和(1)条件下程序运行的运行时间比。 2. 实现附件2中相互嵌套的多层轮廓图案的锯齿形平行和轮廓平行孵化在这里只考虑水平方向0°度的孵化。 请根据附件2中图的坐标点数据(单位mm)实现两组输入参数下的孵化) (1) 内收缩边界距离1mm舱口线间距1mm (2) 内缩边距0.1mm舱口线间距0.1mm。 在两组参数下计算受锯齿形平行和等高线平行舱口的孵化曲线的孵化线总长并计算锯齿形平行舱口的水平线数和等高线平行舱口的圆圈数。 根据孵化程序的多次运行计算平均运行时间(单位ms)计算参数组2)和(1)条件下程序运行的运行时间比。 3. 激光打标机产生的光斑直径很小。 激光打标的孵化线间距一般为0.01mm-0.1mm。激光打标产生大量的等高线数据任何形状的等高线对程序的运行效率都有极高的要求。 请检查您的孵化算法经过的时间并分析其性能为优化孵化算法的性能和效率提供策略或方向使其能够满足实际工业应用的效率要求。
整体求解过程概述(摘要) 激光打标已广泛应用于工业加工中。对于不同的阴影方法标记图案的操作效率和清晰度也不同。我们需要根据不同的参数分别实现单层和多层轮廓图案的Z字形平行和轮廓平行阴影对算法进行评估并给出优化策略。建立了三个模型模型一Z字形平行剖面线模型模型二等高线平行剖面线模型模型三绩效评价函数模型。 对于模型I我们首先计算平行线的数量然后用等距平行线和轮廓曲线的交点构造一个相交矩阵并将交点依次收缩为轮廓线通过相交矩阵位置对应点的斜率确定不连续点最后得到传递矩阵。最后将传递矩阵划分为块并将每个块矩阵的元素按从左到右和从右到左的交替顺序连接以获得水平等距影线。根据我们建立的模型,附件1中单层轮廓图案中水平线间距为1mm和0.1mm的影线分别为797mm和9972mmZ字形平行影线的水平线数分别为88和907基于多次运行影线程序的平均经过时间分别为289ms和1886ms经过时间比为6.52附件2中多层轮廓图案中水平线间距为1mm和0.1mm的总长度分别为1011mm和11079mm水平线数量分别为126和954平均经过时间分别为266ms和1952ms经过时间的比率为7.34。 对于模型II我们建立了一种基于点的多边形填充算法曲率较小的轮廓曲线直接向内收缩同时使用Douglas Puck算法保留拐点并删除一些不重要的平滑点有效地减少了循环次数在曲率较大的地方通过干涉点消除无效循环。最后对轮廓终止条件进行了说明。根据模型附件1中单层轮廓图案中的阴影线总长分别为402mm和1021mm轮廓平行阴影的圆数分别为11和85,平均经过时间分别为326ms和4090ms比值为12.55附件2中多层轮廓图案中的总长度分别为408mm和1099mm圆圈数分别为12和106平均经过时间分别为440ms和5030ms比值为11.27。 为了评估算法的效率我们通过分析上述问题中计算结果的参数和实际情况构建了一个性能函数来评估评分效率然后基于该性能函数我们使用遗传算法提出了进一步改进模型的策略和方向使其能够满足实际工业应用的效率要求。最后给出了该模型的优缺点。
模型假设 •假设1在实际情况下拐点延迟对程序运行时间的影响可以忽略不计并且认为标记物理图与程序设计中的图之间没有偏差。 •假设2填充的等距轮廓线必须是闭合的弯曲多边形。 •假设3本文中的所有曲线都是平行移动的Z字形平行阴影仅使用0°扫描线填充。 •假设4在激光打标的实际生产中不存在设备故障导致的事故。
问题重述 对于不同的材料和不同的工艺参数激光的效果也不同。方向平行填充和轮廓平行填充是两种基本的填充方法。对于平行方向填充方法激光器平行于最初选择的参考方向移动。而轮廓线的平行图案填充是以螺旋方式沿着曲线生成的与曲线边界保持恒定的距离。实际使用哪种类型的舱口在很大程度上取决于标记材料和加工过程对特定加工任务的影响。我们需要建立数学模型来解决以下问题 问题1在只考虑水平Z字形平行影线的情况下实现附件1中单层轮廓图案的Z字形平行和轮廓平行影线并根据附件1的图形坐标数据实现两个输入参数下的影线。 1 内缩边界距离1mm影线间距1mm 2 内缩边界距离0.1mm影线间距0.1mm。 在两组参数下计算 a Z字形平行和轮廓平行阴影的阴影曲线的阴影线的总长度 b 锯齿形平行影线的水平线数 c 轮廓平行影线的圆数 d 基于孵化程序的多次运行的平均经过时间 e 在参数组2和1的条件下程序运行的经过时间的比率。 问题2实现附件2中相互嵌套的多层轮廓图案的Z字形平行和轮廓平行图案填充。参数设置等计算内容与问题1相同。 问题3检查孵化算法的运行时间并分析其性能为优化孵化算法的性能和效率提供策略或方向。 激光打标机的填充工具可以用来填充指定的二维复合曲线图不同填充参数的设置对不同材料的加工效果有很大影响。为了解决这些问题并进一步探索阅卷效率我们的团队将做以下工作 •忽略一些微不足道的影响。 •建立两个多边形平行舱口模型锯齿形和轮廓平行舱口。然后记录两个模型在不同平行扫描线间距下的填充方法、运行时间、扫描次数、长度等数据。 •建立性能评估函数来测试我们的模型并基于遗传算法优化孵化算法。
模型的建立与求解整体论文缩略图 全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可
程序代码
部分程序如下:
function yinward(all,d)
while (all(1,:)all(end,:))
all(end,:)[];
end
nsize(all,1);
L1zeros(n,2);
a(all(2,:)−all(n,:));
bzeros(2,1);
b(2)−a(1);
b(1)a(2);
bb./(sum(b.^2)^(1/2));
bb’;
L1(1,:)all(1,:)b*d;
note[];
note1[];
for i2:1:n−1
a(all(i1,:)−all(i−1,:));
bzeros(2,1);
b(2)−a(1);
b(1)a(2);
bb./(sum(b.^2)^(1/2));
bb’;
L1(i,:)all(i,:)b*d;
if(i4)
note[note;findwr(L1,i)];
end
if (comp2(all(i−1,:)’,all(i,:)’,L1(i−1,:)’,L1(i,:)’))
note1[note1,i];
end
end
a(all(1,:)−all(n−1,:));
bzeros(2,1);
b(2)−a(1);
b(1)a(2);
bb./(sum(b.^2)^(1/2));
bb’;
L1(n,:)all(n,:)b*d;
note[note;findwr([L1;L1(1,:)],n1)];
L1[L1;L1(1,:)];
if (note)
L12resetp(L1,note,note1,all);
else
L12{L1};
end
for i1:1:length(L12)
L112L12{i};
if size(L112,1)2
L112[L112;L112(1,:)];
plot(L112(:,1),L112(:,2),’−k’);
end
end
axis equal;
yL12;
endfunction yresetp(L1,note,note1,yall)
n0size(L1,1);
n1size(note,1)
markones(n1,1);
m1;
knote(n1,1);
if (n12)
comnote(1:end−1,1)−note(2:end,1);
for in1−1:−1:1
if (com(i)0)
mm1;
mark(i)m;
k[k,note(i,1)];
else
while(m0 note(i,1)k(end))
k(end)[];
mm−1;
end
mm1;
mark(i)m;
k[k,note(i,1)];
end
end
else
if(n11)
mark1;
end
end
decojudgcc(L1,mark,note);
anodeco{3};
dele[deco{1},note1];
compledeco{2};
L1(comple(:,3),:)comple(:,1:2);
i1;
remjd[];
while(in1)
jjudgct(note(i,:),note1,n0);
note1j{2};
if(j{1})
remjd[remjd,note(i,1)2:note(i,2)−1];
end
ii1;
end
msize(ano,1);
numc(1:size(L1,1))’;
Lc[L1,numc];
Lc([dele,remjd],:)[];
numc2(1:size(Lc,1))’;
y{};
kkLc(:,3);
ttLc(:,1:2);
for i1:1:m
anumc2(kkano(i,1));
bnumc2(kkano(i,2));
cnumc2(kkano(i,3));
dnumc2(kkano(i,4));
y[y,{tt([a:b,c:d],:)}];
Lc([a:b,c:d],:)[];
end
ttLc(:,1:2);
y[y,{tt}];
for i1:1:length(y)
mlength(y{i});
if(m3)
y{i}[];
elseif(m200)
yyy{i};
j1;
while (jm)
if(deld2(yall,yy(j,:)))
jm1;
y{i}[];
end
jj1;
end
end
end
end全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可